Integrated circuit devices are typically subject to rigorous testing before they are sold or put to their intended use. In particular, each integrated circuit device is tested to determine whether or not certain specifications for that type of device, as determined and set by the manufacturer, are met.
Complete testing of an integrated circuit device comprises both functional testing as well as application-specific testing. Functional testing relates to whether or not the hardware found within the integrated circuit device is free from defects and meets manufacturers' specifications. For example, if the integrated circuit device is or comprises a memory component such as a memory module or a memory device, functional testing relates to whether or not a digital value written to a cell of memory will later be retrieved without error, regardless of how the memory module or memory device is implemented.
Functional testing also relates to whether or not certain critical operating characteristics of the integrated circuit device fall within the allowable range of values. These critical operating characteristics include such characteristics as power consumption, standby current, leakage current, voltage levels, and access time. The allowable range may equally be set by the manufacturer of the device or by the corresponding appropriate standards.
Functional testing is generally oriented toward discovering whether or not an integrated circuit device under test is likely to fail during its intended use or application. It involves testing integrated circuit devices to verify how they execute a set of functions during testing procedures that are specifically designed for this purpose.
Complete testing of an integrated circuit device also involves application-specific testing. During application-specific testing, integrated circuit devices may be subject to a testing of their system behavior in order to detect their behavioral failures. Behavioral failure is a type of failure that occurs when an integrated circuit device is operated within an actual application system. For example, it may be a failure that occurs as a result of a specific command or access sequence to a memory device or memory module found in normal PC operations.
It is not necessarily the case that functional testing will detect behavioral failures because, during that type of testing, the operation of the integrated circuit device under test is not necessarily indicative of how the device will behave during its intended application. Accordingly, complete and comprehensive testing of an integrated circuit device may require application-specific testing in addition to functional testing.
The testing of integrated circuit devices may involve the use of test vector patterns. In particular, test vector patterns may be generated by an appropriate test vector generator and then transmitted by a tester to a device under test across a communication channel. The device under test then sends a response signal to the tester. The response signal may be compared to a copy of the transmitted test vector pattern that is stored by the tester to determine if the device under test has produced an expected result.